Some existing printing devices, such as a printing press or dot matrix-type printer, are known to cause distortion by altering the size of an image printed on a particular media. This type of distortion may occur when media shrinks or stretches during the printing process. Distortion caused by a printing device may be in a variety of forms. For instance, media passing through a printing device may expand or shrink in the direction of the media travel (Y-direction of the coordinates shown in FIG. 1A). In addition, media may expand or shrink in the direction across the media travel (X-direction of the coordinates shown in FIG. 1A), or expand or shrink in both the X and Y directions.
FIGS. 1A and 1B illustrate an example of the shortcomings described above. In this example, as shown in FIG. 1A, a first printing device 101 may receive an image data set to produce a first print 120 having an image of a particular height and width. At the same time, as shown in FIG. 1B, a second printing device 102 may the same image data set but produce a second print 121 having an image of a different height and width than the image of the first print 120. In situations when different types of printing media are used, this variance in the height and width of a printed image may occur in different output prints even when they are printed on the same printer. This is particularly a problem when a printed image must undergo several passes of a printing press, where each pass produces a color separation of an image. In this arrangement, each ink used in each pass, may distort the image by a different amount causing the different separations to be misaligned in the final color image.
There are a number of existing image compensation systems designed to address the above-described distortion problem. However, such existing systems have many shortcomings. For instance, some existing methods for scaling an image to compensate for printer distortion may introduce various artifacts and additional distortion in a printed image. In addition, some prior art image processing systems also utilize intense mathematical calculations that hamper the efficiency of an image scaling process.
In addition to the above-described problems, existing image scaling systems introduce many other limitations that are caused by the architecture of an embodying software application. For instance, some existing image processing software applications are capable of storing only small sections of an image file at one time. This arrangement is common in software applications that transmit and delete stored sections of an image file as new sections of the image file are received from a computer. Such an arrangement exists in raster image applications, such as printer drivers, that are configured to temporarily store a few scan lines of an image file at one time, as printer drivers purge stored scan lines as they are transmitted to a printer. Since such printer drivers are not able to process an entire image file at one time, the driver is greatly limited to a few scaling methods that cannot effectively scale an image file in multiple directions.
In view of the foregoing, there is a need for a system and method for compensating for distortion of a printed image. There is also a need for an image processing method for scaling images in multiple directions. In addition, there is a continued need to develop more efficient image processing methods for compensating for image distortion.